# CMake 最低版本号要求
cmake_minimum_required(VERSION 3.20)

# 定义变量
set(VAR1 "OFF")
set(VAR2 "DD")
set(VAR3 2 GREATER 1)
# 将长度存入len2变量 为1;len3变量 为3
list(LENGTH VAR2 len2)
list(LENGTH VAR3 len3)
message(STATUS "len3 ${len3} len2 ${len2}")
# 获取指定索引(0开始)的元素;将索引0 1的值写入变量list_var1；超出范围则报错
# 这个原文介绍有错误 详细可看： https://www.jianshu.com/p/89fb01752d6f
list(GET VAR3 0 1 -1 -2 list_var1)
message(STATUS "list_var1 ${list_var1}")
#将元素添加到列表中
list(APPEND VAR3 0 1)
message(STATUS "VAR3 ${VAR3}")
#查找指定值的索引，如果不存在 返回-1
list(FIND VAR3 5 var_index)
message(STATUS "var_index ${var_index}")
#插入值到指定索引处
list(INSERT VAR3 2 insert)
message(STATUS "VAR3 1 ${VAR3}")
# 删除列表里面的元素(列表)
list(REMOVE_ITEM VAR3 2 insert)
message(STATUS "VAR3 2 ${VAR3}")
# 反转列表
list(REVERSE VAR3)
message(STATUS "VAR3 3 ${VAR3}")
# 排序列表
list(SORT VAR3)
message(STATUS "VAR3 4 ${VAR3}")

# cmake -P list.cmake